DO-arm producer: HIRO Automation → ActionDef (MARS/Hiro parity, schema half)#119
Merged
Merged
Conversation
…ty, schema half) Closes the schema-shape half of PROBE-OGAR-DO-ARM-LIFT: the MARS import lifted the STRUCTURAL arm (A→R→S→M Classes); this lifts the BEHAVIORAL arm the import left on the table — the OGIT Automation domain (HIRO's actuator vocabulary) into OGAR ActionDefs, per docs/HIRO-DO-ARM-LIFT.md §4-§5. New `do_arm` module in ogar-from-schema (reuses the TTL parser): - into_action_def(&EntityDecl) -> Option<ActionDef>: KnowledgeItem → ActionDef (object_class ← `relates MARSNodeTemplate`, kausal ← `contains Trigger` → LifecycleTrigger, predicate = `execute` from the entity's own dcterms:description, decorators = the §4 actuator verbs present). - ActionHandler / ActionApplicability / Trigger recognized as contract PARTS (return None); ActionApplicability's environmentFilter → StateGuard via kausal_from_entity. - payload_attribute() records the knowledgeItemFormalRepresentation slot BY NAME; body_source stays None — the lossless-DO rule (the ActionDef points to the body, never inlines/flattens it into DDL), test-enforced. - canonical_object_class() + acronym-correct snake() (MARSNodeTemplate → mars_node_template). Calibration parity tests run against the real vendored OGIT Automation TTL bytes (no fixtures — same frozen-source discipline as the MARS structural arm). 24 tests green (5 new), clippy-clean. The behavioral half (ActionDef → adapter → execute → reproduce KI behavior bit-for-bit) stays CONJECTURE — it needs KI instances with bodies, which the vendored vocab does not carry. Docs: D-HIRO-DO ledger row (DISCOVERY-MAP §2.8); HIRO-DO-ARM-LIFT §6 promoted CONJECTURE → schema half SHIPPED [G]; MARS-TRANSCODING cross-ref. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EYvNjD8M8LMNYbRy3gq2FP
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Closes the lift→triples seam for the behavioral arm: the DO-arm ActionDef (D-HIRO-DO) flows through the canonical ogar-emitter to SPO triples — the surface the RBAC / query layers consume. tests/do_arm_emit.rs (new integration test, ogar-emitter as dev-dep): - KnowledgeItem TTL → into_action_def → emit_action_def: asserts the §4 field mapping survives as ogar:ActionDef / ogar:actionPredicate (execute) / ogar:actionObjectClass (ogit-automation/mars_node_template) / LifecycleTrigger kausal / actuator-verb decorators. - lossless-DO holds END-TO-END: body_source is None, so the emitter produces NO ogar:actionBody triple — a body triple would mean bytes leaked into the IR. Test fails if any do. ogar-emitter is an acyclic dev-dep (it depends on ogar-vocab/-ontology, never on ogar-from-schema). 24 lib + 2 integration tests green, clippy-clean. Docs: D-HIRO-DO ledger row notes the proven emit path (+ D-EMIT dep). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EYvNjD8M8LMNYbRy3gq2FP
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Closes the schema-shape half of
PROBE-OGAR-DO-ARM-LIFT. The MARS import lifted the structural arm (A→R→S→MClasses, XSD-oracle calibrated); this lifts the behavioral arm the import left on the table — the OGIT Automation domain (HIRO's actuator vocabulary) into OGARActionDefs, perdocs/HIRO-DO-ARM-LIFT.md§4–§5.How
New
do_armmodule inogar-from-schema(reuses the existing TTL parser — no new deps):into_action_def(&EntityDecl) -> Option<ActionDef>—KnowledgeItem→ActionDef:object_class←relates MARSNodeTemplate(ogit-automation/mars_node_template)kausal←contains Trigger→LifecycleTriggerpredicate=execute(from the entity's owndcterms:description, not invented)decorators= the §4 actuator verbs present (extraction provenance)ActionHandler/ActionApplicability/Triggerare recognized as contract parts (returnNone);ActionApplicability'senvironmentFilterlifts to aStateGuardviakausal_from_entity.payload_attributerecords theknowledgeItemFormalRepresentationbody slot by name;body_sourcestaysNone. The testknowledge_item_payload_is_pointed_to_never_inlinedfails if any bytes get inlined — the §1 "points to the body, never flattens into DDL" rule, made executable.canonical_object_class+ acronym-correctsnake(MARSNodeTemplate→mars_node_template).Calibration
Parity tests run against the real vendored OGIT Automation TTL bytes (no fixtures — same frozen-source discipline as the MARS structural arm). 24 tests green (5 new),
do_arm.rsclippy-clean.Scope honesty
The behavioral half (
ActionDef→ adapter → execute → reproduce a KnowledgeItem's recorded behavior bit-for-bit) stays CONJECTURE — it needs KI instances with bodies, which the vendored vocab does not carry. This PR certifies the shape, not executable equivalence.Docs / ledger
D-HIRO-DOrow added (DISCOVERY-MAP.md§2.8, CODED schema-half)HIRO-DO-ARM-LIFT.md§6 promoted CONJECTURE → schema half SHIPPED[G]MARS-TRANSCODING.mdcross-ref🤖 Generated with Claude Code
Generated by Claude Code